﻿$(document).ready(function(){
    //Tạo đối tượng websocket
    var Wurl = "ws://localhost:9001/webchat/SourceCode/server.php";
    wsocket = new WebSocket(Wurl);
    
    //Khi kết nối được mở
    wsocket.onopen = function(ev){
        $('#chat-center-cbox').append("<div class='chat-note'>Chào mừng đến phòng chat...</div>");
    }; 
    
    //Tạo sự kiện bút submit được nhấn khi ấn Enter
    $('#chat-mess').keypress(function(e){
        if(e.keyCode==13){
            $('#chat-sent').click();
        }
    });
    
    //Khi nút submit được nhấn
    $('#chat-sent').click(function(){
       var id = $('#hidden-id').attr('title');
       var gid = $('#hidden-gid').attr('title');
       var mess = $('#chat-mess').val();
       var lang = $('select#chat-select').val();
       var avatar = $('img#user-avatar-info').attr('class');
       var uname = $('div#user-info-uname').attr('value');
       if(mess==''){
            alert("Vui lòng nhập nội dung chat");
            return;
       }
       //Tạo chuổi JSON
       var msg = {
         uid: id,
         groupid: gid,
         message: mess,
         avatar: avatar,
         uname: uname,
         language: lang
       };
       //Gửi chuổi JSON lên server
       wsocket.send(JSON.stringify(msg));
       $('#chat-mess').val('');//Reset lại khung nhập liệu
    });
    
    //Khi nhận được message từ server
    wsocket.onmessage =function(ev){
        var msg = JSON.parse(ev.data);
        var type = msg.type;
        var uname = msg.name;
        var uavatar = msg.avatar;
        var umess = msg.message;
        var time = msg.time;
        var clang = msg.language;
        var g_id = msg.g_id;
        var lang = $('select#chat-select').val();
        var gid = $('#hidden-gid').attr('title');
        if(g_id === gid ){
        if(clang=='vi'){
            dataString = 'mess='+encodeURI(umess)+'&lang=vi_to_en';
        }else{
            dataString = 'mess='+encodeURI(umess)+'&lang=en_to_vi';
        }
        if(type == 'usermsg'){
            //Nếu là tin nhắn của người dùng           
            if(clang==lang){
                //Nếu ngôn ngữ của người dùng trùng với ngôn ngữ chat                
                  var textdiv ="<div class='chat-line'><div class='user-info'><div class='cbox-user-img'><img src='Images/Uploads/"
                    +uavatar+
                    "' width='30' height='30' alt='user-avatar'></div><div class='cbox-message'>"
                    +umess+
                    "</div><div class='cbox-message-trans'>"
                    +umess+
                    "</div></div><div class='user-info-line'><div class='cbox-user-name'>"
                    +uname+
                    "</div><div class='cbox-time'>"
                    +time+
                    "</div></div></div><!-- end chat-line -->";            
                $('#chat-center-cbox').append(textdiv);
                var cboxheight = $('#chat-center-cbox').height();
                $('#chat-center-cbox').scrollTop(cboxheight+92);
                return;                
            }else{
                //Nếu ngôn ngữ người dùng không trùng với ngôn ngữ chat
                $.ajax({
                type: 'GET',
                url: "./SourceCode/Chat_Trans.php",
                data: dataString,
                success: function(server_response) {
                    var textdiv ="<div class='chat-line'><div class='user-info'><div class='cbox-user-img'><img src='Images/Uploads/"
                    +uavatar+
                    "' width='30' height='30' alt='user-avatar'></div><div class='cbox-message'>"
                    +server_response+
                    "</div><div class='cbox-message-trans'>"
                    +umess+
                    "</div></div><div class='user-info-line'><div class='cbox-user-name'>"
                    +uname+
                    "</div><div class='cbox-time'>"
                    +time+
                    "</div></div></div><!-- end chat-line -->";  
                    $('#chat-center-cbox').append(textdiv);
                    var cboxheight = $('#chat-center-cbox').height();
                    $('#chat-center-cbox').scrollTop(cboxheight+92);
                    return;
                }
                });
                
            }           
        }
        
        if(type=='system')
        {
            //Nếu là tin nhắn của hệ thống
            $('#chat-center-cbox').append("<div class='chat-note'>"+umess+"</div>");
        }
        var cboxheight = $('#chat-center-cbox').height();
        $('#chat-center-cbox').scrollTop(cboxheight+92);
    }
    };
    wsocket.onerror = function(ev){
         $('#chat-center-cbox').append("<div class='chat-note'>Đã ngắt kết nối với server</div>");
    };
    wsocket.onclode = function(ev){
      $('#chat-center-cbox').append("<div class='chat-note'>Đã ngắt kết nối</div>"); 
    };
    
    
});